// pages/page1/page1.js
//数据库初始化
const db=wx.cloud.database({
  env:'qwq233-4gscj1oa41316969'
})
//初始化等身手办数据集合
const d_goodsCollection=db.collection('d_goods')
//初始化命令对象
const _=db.command
Page({
  data: {
    num:1,
    cr_id:null,
    carts:[],               // 购物车列表
    hasList:false,          // 列表是否有数据
    totalPrice:0,           // 总价，初始为0
    selectAllStatus:false,    // 全选状态，默认全选
    obj:{
        name:"hello"
    }
  },
  onShow() {
    this.setData({
      hasList: true,
      carts:[]
   
    });
    this.getTotalPrice();
  },
  /**
   * 当前商品选中事件
   */
  selectList(e) {
    const index = e.currentTarget.dataset.index;
    let carts = this.data.carts;
    const selected = carts[index].selected;
    carts[index].selected = !selected;
    this.setData({
      carts: carts,
      selectAllStatus:!this.data.selectAllStatus, 
    });
    this.getTotalPrice();
  },

  /**
   * 删除购物车当前商品
   */
  deleteList(e) {
    const index = e.currentTarget.dataset.index;
    let carts = this.data.carts;
    carts.splice(index,1);
    this.setData({
      carts: carts
    });
    if(!carts.length){
      this.setData({
        hasList: false
      });
    }else{
      this.getTotalPrice();
    }
  },

  /**
   * 购物车全选事件
   */
  selectAll(e) {
    let selectAllStatus = this.data.selectAllStatus;
    selectAllStatus = !selectAllStatus;
    let carts = this.data.carts;

    for (let i = 0; i < carts.length; i++) {
      carts[i].selected = selectAllStatus;
    }
    this.setData({
      selectAllStatus: selectAllStatus,
      carts: carts,
    });
    this.getTotalPrice();
  },

  /**
   * 绑定加数量事件
   */
  addCount(e) {
    const index = e.currentTarget.dataset.index;
    let carts = this.data.carts;
    let num =this.data.num;
    num = num + 1;
    this.data.num = num;
    this.setData({
      carts: carts,
      num:num
    });
    this.getTotalPrice();
  },

  /**
   * 绑定减数量事件
   */
  minusCount(e) {
    const index = e.currentTarget.dataset.index;
    const obj = e.currentTarget.dataset.obj;
    let carts = this.data.carts;
    let num = this.data.num;
    if(num <= 1){
      return false;
    }
    num = num - 1;
    this.data.num = num;
    this.setData({
      carts: carts,
      num:num
    });
    this.getTotalPrice();
  },

  /**
   * 计算总价
   */
  getTotalPrice() {
    let carts = this.data.carts;                  // 获取购物车列表
    let total = 0;
    for(let i = 0; i<carts.length; i++) {         // 循环列表得到每个数据
      if(carts[i].selected) {                     // 判断选中才会计算价格
        total += this.data.num * carts[i].goods_price;   // 所有价格加起来
      }
    }
    this.setData({                                // 最后赋值到data中渲染到页面
      carts: carts,
      totalPrice: total.toFixed(2)
    });
  },
  toPay() {
    wx.showModal({
      title: '提示',
      content: '本系统只做演示，支付系统未开启',
      text:'center',
    })
  },
   //手办查询数据
   getData:function(){
    d_goodsCollection.where({id:this.data.cr_id*1}).get({
      success:(res)=>{
        this.setData({
          carts:res.data,
          }
          )
          console.log(this.data.carts)
      },
    
    })
  },
   /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    console.log(options)
    this.setData({
      cr_id:options.id
    })
    console.log(this.data.cr_id)
    this.getData()
  },
})

